This invention pertains to digital signal processing and more particularly to limit cycle-absent second-order allpass digital filters.
In conventional Infinite Impulse Response (IIR) digital filters, limit cycles are sometimes referred to as a multiplier round-off limit cycle. These are low-level oscillations that can exist in an otherwise stable filter as a result of the nonlinearity associated with rounding or truncating internal filter calculations. These limit cycles, usually under the zero-input condition, encountered in a recursive digital filter using finite word-length computations are a common problem that are annoying and difficult to eliminate. The cause of limit cycles or zero-input oscillations lies in the use of non-linear quantizers in the feedback loops of a recursive digital filter. Since a limit cycling filter behaves as a weak non-linear system, it is quite complicated or even impossible to prescribe the conditions under which limit cycles will indeed occur. Nor is it a simple task to design limit-cycle-absent digital filters in a generalized sense.
Limit cycles can exist in both fixed-point and floating-point IIR digital filter implementations. Many techniques have been proposed for testing a realization for limit cycles and for bounding their amplitude when they do exist. In fixed-point realizations it is possible to prevent limit cycles by choosing a state-space realization for which any internal transient is guaranteed to decay to zero and then using magnitude truncation of internal calculations in place of rounding.
As an example in one application, with the use of first and second order allpass filters as building blocks to design audio equalizers, it is still difficult to actually achieve limit-cycle absent systems that are more efficient. Even employing some specific techniques given in xe2x80x9cInsights into digital filters made as the sum of two allpass functions,xe2x80x9d A. N. Willson, Jr. and H. Orchard, IEEE Trans. Circuits Systems, vol. 42, p. 129-137, lattice networks do not eliminate limit cycle oscillations. In addition, according to xe2x80x9cExplicit formulas for lattice wave digital filters,xe2x80x9d L. Gazsi, IEEE Trans. Circuits Systems, vol. CAS-32, p. 68-88, 1985, wave digital filters tend to be almost free of limit cycle parasitic oscillations but do not eliminate limit cycle parasitic oscillations. Neither do the digital filter techniques employed in xe2x80x9cA class of low-noise computationally efficient recursive digital filters with applications to sampling rate alternation,xe2x80x9d R. Ansari and B. Liu, IEEE Trans. Acoust. Speech, Signal processing, vol. ASSP-33, p. 90-97, Feb. 1985, actually achieve limit-cycle-absent systems. All of the aforementioned references provide examples of attempts to achieve limit-cycle-absent systems and are incorporated by reference herein.
An alternative embodiment of direct form IIR filter realization used to reduce limit cycles is the lattice realization which is usually formed directly from an unfactored and unexpanded transfer function. The implementation of stable first-order allpass filters, such as the allpass filter 10 shown in FIG. 1, does not suffer a limit cycle problem if the quantizer located behind the multipliers meets the Barkin conditions disclosed in xe2x80x9cFrequency domain criteria for the absence of zero-input limit cycles in nonlinear discrete-time systems, with applications to digital filters,xe2x80x9d T. Claasen et al., IEEE Trans. Circuits System, vol. CAS-22, p.232-239, March 1975, which is incorporated by reference herein. The Barkin conditions require that the quantization function exhibit magnitude truncation.
For second-order allpass filters, such as the allpass filter 50 shown in FIG. 2, however, the magnitude truncation alone fails to ensure limit-cycle absent systems. Thus, more complicated techniques must be implemented. The frequency domain criteria is disclosed in the Claasen paper. To establish the number of sufficient conditions in order to achieve limit-cycle-absent allpass filters, double precision computing is implemented. Double-precision computing involves positioning two magnitude-truncation quantizers in front of the delay elements. In this way the limit-cycle absent objective is reached and the expense relating to performing double-precision computations is reduced or avoided.
FIG. 3 displays the modified filter structure of FIG. 2 which includes a zero-input and introduces two magnitude-truncation quantizers that are positioned before the delay elements. Since the type-0 lattice structure allpass filter 100 of FIG. 3 includes quantizers positioned right before the delay elements, each state variable is quantized independently of others. Unfortunately, the type-0 lattice structure requires many more computations because double precision numbers occur after the multipliers.
Therefore, it would be desirable to have an allpass digital filter, absent of limit cycles, having minimum hardware requirements and computations.
The present invention provides a lattice-based second-order allpass filter wherein the structure promotes a digital filter, absent of limit cycles. A digital filter circuit includes interconnected quantizers, delays, multipliers, and adders for defining a transfer function, where the circuit corresponds in order and values to intrinsic values of the transfer function. The quantizers are connected in series after the multipliers to eliminate any double precision additions which give rise to the appearance of parasitic oscillations. The savings in hardware results from locating the quantizers after the multipliers; thus, eliminating all double precision additions that are mandatory in the classical second-order lattice structure. The second-order allpass filter coefficients that retain the limit-cycle-absent property of the filter correspond to specific guidelines.